
#include "Salida.h"

Salida:: Salida(int x, int y, int ID, std::string nom):ElementoCircuital(x, y, ID){
	entrada = NULL;
	tipo=TIPO_SALIDA;
	nombre=nom;
}

Salida:: ~Salida(){
	liberar_entradas();
}

void Salida:: liberar_entradas(){
	if(entrada){
		(entrada->get_emisor())->cortar_cable(entrada->get_id());
	}
}


bool Salida:: calcular_salida(int nro_salida,int& t_transicion){
	t_transicion=0;
	return (entrada->get_emisor())->calcular_salida(entrada->get_nro_salida(),t_transicion);}

void Salida:: set_entrada(Conexion* cable){
	entrada=cable;
	(cable->get_emisor())->agregar_conexion(cable, cable->get_nro_salida());
}

void Salida:: desconectar_entrada(int nro){entrada=NULL;}

bool Salida:: ready(){return !(entrada==NULL);}
